Some computing devices (e.g., mobile phones, tablet computers, etc.) may provide a graphical keyboard as part of a graphical user interface for text entry using a presence-sensitive display (e.g., a screen). For instance, a presence-sensitive display of a computing device may output a graphical (or “soft”) keyboard that enables the user to enter data by indicating (e.g., by tapping, sliding, and/or swiping on or over) keys displayed at the presence-sensitive display.
In some cases, the computing device may present a graphical keyboard with which the user interacts by tapping individual keys of the keyboard or essentially gesturing out a word by sliding his or her finger over the regions associated with the keys. In this way, graphical keyboards provide an input method that allows the user to enter characters, words, or a group of words by one or more gestures. As such, a graphical keyboard may allow the user to achieve a certain degree of efficiency by quickly and accurately entering text. A computing device that provides a graphical keyboard may utilize word prediction, auto-correction, and/or suggestion techniques for determining a word from a user input.
However, graphical keyboards may have certain drawbacks. For example, a computing device may generate touch events when a user performs a gesture at a presence-sensitive screen that outputs a continuous gesture graphical keyboard. The touch events may include representations of one or more different locations of the presence-sensitive input device that are traversed by the user's finger when performing a tap or continuous gesture. In some examples, a user may provide such input in different positions based on different postures with which the user provides the input (e.g., tapping with two thumbs and/or two fingers of different hands (bimodal) versus tapping with a single finger (single tap)). As such, the graphical keyboard may not correctly determine the keys and/or words intended by the user. Consequently the computing device may select one or more words and/or characters that the user did not intend to enter, thereby resulting in inaccurate text entry that reduces the speed at which the user may interact with the computing device.